using System.Runtime.CompilerServices;
using Triton.Game.Mapping;

namespace Triton.Game.Data
{
	public class RewardData
	{
		[CompilerGenerated]
		private Reward.Type type_0;

		[CompilerGenerated]
		private int int_0;

		public Reward.Type Type
		{
			[CompilerGenerated]
			get
			{
				return type_0;
			}
			[CompilerGenerated]
			private set
			{
				type_0 = value;
			}
		}

		public int Count
		{
			[CompilerGenerated]
			get
			{
				return int_0;
			}
			[CompilerGenerated]
			private set
			{
				int_0 = value;
			}
		}

		public RewardData(Triton.Game.Mapping.RewardData reward)
		{
			Type = reward.m_type;
			Count = 1;
			if (reward.RewardType == Reward.Type.ARCANE_DUST)
			{
				ArcaneDustRewardData arcaneDustRewardData = new ArcaneDustRewardData(reward.Address);
				Count = arcaneDustRewardData.Amount;
			}
			else if (reward.RewardType == Reward.Type.GOLD)
			{
				GoldRewardData goldRewardData = new GoldRewardData(reward.Address);
				Count = (int)goldRewardData.Amount;
			}
			else if (reward.RewardType == Reward.Type.CARD)
			{
				CardRewardData cardRewardData = new CardRewardData(reward.Address);
				Count = cardRewardData.Count;
			}
			else if (reward.RewardType == Reward.Type.BOOSTER_PACK)
			{
				BoosterPackRewardData boosterPackRewardData = new BoosterPackRewardData(reward.Address);
				Count = boosterPackRewardData.Count;
			}
		}
	}
}
